require('@nomicfoundation/hardhat-toolbox')
// require('@chainlink/env-enc').config() // 使用env-enc插件,加载的是.env.enc中加密的数据
require('dotenv').config() // 使用dotenv插件,加载的是.env中的数据
require('./tasks')
require('@nomicfoundation/hardhat-ethers')
require('hardhat-deploy')
require('hardhat-deploy-ethers')

const SEPOLIA_RPC_URL = process.env.SEPOLIA_RPC_URL
const PRIVATE_KEY = process.env.PRIVATE_KEY
const PRIVATE_KEY_1 = process.env.PRIVATE_KEY_1
const ETHERSCAN_API_KEY = process.env.ETHERSCAN_API_KEY

/** @type import('hardhat/config').HardhatUserConfig */
module.exports = {
	solidity: '0.8.24',
	defaultNetwork: 'hardhat', // 默认本地网络
	mocha: {
		// mocha测试框架默认请求超时时间为40s，这里设置为300s,因为测试用例中需要等待181s,还有其他程序需要耗时
		timeout: 300000,
	},
	networks: {
		sepolia: {
			url: SEPOLIA_RPC_URL,
			accounts: [PRIVATE_KEY, PRIVATE_KEY_1],
			chainId: 11155111,
		},
	},
	etherscan: {
		apiKey: {
			sepolia: ETHERSCAN_API_KEY,
		},
		customChains: [],
	},
	// 该配置项相当于给networks配置的accounts配置了别名，default对应accounts数组中的索引
	namedAccounts: {
		firstAccount: {
			default: 0,
			11155111: 0,
		},
		secondAccount: {
			default: 1,
			11155111: 1,
		},
	},
	// 不想在终端中打印gas使用情况，可以设置为false
	// gasReporter: {
	// 	enabled: false,
	// },
}
